﻿package app.view.components.sections.children 
{
	import app.model.RemoteProxy;
	import app.view.components.buttons.GlamurBtnBase;
	import app.view.components.guiDima.ImageItem;
	import app.view.components.sections.LabeledSectionBase;
	import app.view.events.UIEvent;
	import com.snzflash.components.grid.Grid;
	import flash.display.Shape;
	import flash.events.MouseEvent;
	
	/**
	 * // 2.2.1 30 видео интервью
	 * @author www
	 */
	public class Children30ResearchMBase extends LabeledSectionBase
	{
		// app.view.components.sections.children.Children30ResearchMBase
		
		public var researchBtn:GlamurBtnBase
		private var _videoItemArray:Array;
		private var _resultVideo:String;
		private var _grid:Grid;
		
		public  var videoBox:VideoBoxPresentInterview;
		
		public function Children30ResearchMBase() 
		{
			super();
		}
		
		override protected function init():void
		{
			super.init();
			
			var col:Number = 10;
			var gh:Number = 5;
			var gv:Number = 5;
			var w:Number = ImageItem.WIDTH*col + (col - 1) * gh+5;
			var h:Number = ImageItem.HEIGHT*col + (col - 1) * gv+5;
			
			
			
			//trace('w=', w);
			// настроим таблицу
			_grid = new Grid();
			_grid.width = w;
			_grid.height = h;
			_grid.numRows = 5;
			_grid.numColumns = 6;
			_grid.horizontalGap = gh;
			_grid.verticalGap = gv;
			_grid.itemRenderer = ImageItem;
			addChild(_grid);
			_grid.x = 100;
			_grid.y = 280;
			
			
		}
		
		
		private function setEvents():void
		{
			addEventListener(UIEvent.CLICK_30_INTERVIEW_WINNER, onClickImage, true);
			researchBtn.addEventListener(MouseEvent.CLICK, onResearchBtn);
		}
		
		private function removeEvents():void
		{
			removeEventListener(UIEvent.CLICK_30_INTERVIEW_WINNER, onClickImage, true);
			researchBtn.removeEventListener(MouseEvent.CLICK, onResearchBtn);
		}
		
		
		
		override public function onDestroy():void 
		{
			// чистим что тут есть и вызываем супера
			removeEvents();
			
			_grid.destroy();
			//removeChild(_grid);
			
			videoBox.destroy();
			
			researchBtn.destroy();
			
			super.onDestroy();
		};
		
		override public function get data():Object { return _data; };
		
		override public function set data(value:Object):void 
		{
			super.data = value;
			
			setParamHead();
			
			_videoItemArray = new Array();
			
			var arr:Array = new Array();
			var ind:int = 0;
			
			for each(var object:* in _data.data.video_extends)
			{
				//trace('ddd', object.flv[1].flv_path);
				var objInfo:Object = new Object();
				objInfo.id 			= ind;
				objInfo.image 		= RemoteProxy.DOMEN + object.image[1].image_path;
				objInfo.flv 		= RemoteProxy.DOMEN + object.flv[1].flv_path;
				// здесь не нужно
				//objInfo.text_video 	= object.text[1];
				//objInfo.text_image 	= object.text[2];
				//objInfo.text_fio 	= object.text[3];
				
				arr.push( objInfo );
				ind++;
			}
			
			_resultVideo = arr[0].flv;
			
			// провери чтобы не было больше 30? 
			for (var i:int = 1; i < 31; i++) 
			{
				_videoItemArray.push( arr[i-1] );
			}
			arr = null;
			
			
			_grid.dataProvider = _videoItemArray as Array;
			addChild(_grid);
			
			/*if (_videoItemArray[0].flv!=RemoteProxy.DOMEN) 
			{
				videoBox.source = _videoItemArray[0].flv;
			}else
			{
				// очистить плеер
				videoBox.reset();
				
			}*/
			
			videoBox.source = '';
			
			
			setEvents();
		};
		
		private function onClickImage(e:UIEvent):void 
		{
			//trace('555',e.data.id,_videoItemArray[e.data.id].flv);
			
			if (_videoItemArray[e.data.id].flv!=RemoteProxy.DOMEN) 
			{
				videoBox.source = _videoItemArray[e.data.id].flv;
			}else
			{
				// очистить плеер
				
				//trace('99999');
				videoBox.reset();
			}
			
		}
		
		/**
		 * клик по кнопки "Результаты исследования"
		 * @param	e
		 */
		private function onResearchBtn(e:MouseEvent):void 
		{
			trace('res = ',_resultVideo);
			
			if (_resultVideo!=RemoteProxy.DOMEN) 
			{
				videoBox.source = _resultVideo;
			}else
			{
				// очистить плеер
				videoBox.reset();
			}
		}
		
	}

}